home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Atari Mega Archive 2
/
Atari Mega Archive CD - Volume 2.iso
/
minix
/
up1510b.tgz
/
up1510b
/
src
/
commands
/
basename.c
< prev
next >
Wrap
C/C++ Source or Header
|
1990-07-19
|
609b
|
36 lines
/* basename - print the last part of a path: Author: Blaine Garfolo */
#define NULL 0
main(argc, argv)
int argc;
char *argv[];
{
int j, suflen;
char *c;
char *d;
extern char *rindex();
if (argc < 2) {
std_err("Usage: basename string [suffix] \n");
exit(1);
}
c = argv[1];
d = rindex(argv[1], '/');
if (d == NULL)
d = argv[1];
else
d++;
if (argc == 2) { /* if no suffix */
prints("%s\n", d);
exit(0);
} else { /* if suffix is present */
c = d;
suflen = strlen(argv[2]);
j = strlen(c) - suflen;
if (strcmp(c + j, argv[2]) == 0) *(c + j) = 0;
}
prints("%s\n", c);
}